package com.gscitysfy.cus.drain.modules.pipe.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 隐患通知单
 * </p>
 *
 * @author Axi
 * @since 2022-11-16 12:06:33
 */
@Data
@TableName("drain_pipe_hidden_danger_requisition")
public class DrainPipeHiddenDangerRequisition implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId
    private Long cmKid;

    /**
     * 通知单编号
     */
    private String requisitionNo;

    /**
     * 隐患id
     */
    private Long hiddenDangerId;

    /**
     * 单位名称
     */
    private String unitName;

    /**
     * 单位地址
     */
    private String unitAddress;

    /**
     * 单位负责人
     */
    private String unitPrincipal;

    /**
     * 联系电话
     */
    private String connectPhone;

    /**
     * 整改时限
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date fixNode;

    /**
     * 通知单状态（0未推送，1已推送）
     */
    private String requisitionStatus;

    /**
     * 推送时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date pushedTime;

    /**
     * 隐患详情
     */
    private String frontAnalyseDetail;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    private String cmCreator;

    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.UPDATE)
    private String cmModifier;

    private String cmOrgflag;

    private Long cmRegflag;

    @TableField(exist = false)
    private String cmRegflagDesc;

    private String cmTenantid;

    @TableField(fill = FieldFill.INSERT)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date cmAddtime;

    @TableField(fill = FieldFill.UPDATE)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date cmUptime;

    private Integer cmVersion;

    @TableLogic(value = "false", delval = "true")
    @TableField(fill = FieldFill.INSERT)
    private Boolean cmUsable;


    /**
     * 隐患编号
     */
    @TableField(exist = false)
    private String hiddenDangerNo;

    /**
     * 隐患名称
     */
    @TableField(exist = false)
    private String hiddenDangerName;

    /**
     * 隐患来源
     */
    @TableField(exist = false)
    private String hiddenDangerSource;

    /**
     * 隐患类别
     */
    @TableField(exist = false)
    private String hiddenDangerCategory;

}
